In digital video systems, such as network camera monitoring systems, video sequences are compressed by an encoder before transmission, using various video encoding methods. In many cases, there is a limited bandwidth in a network over which the video sequences are to be transmitted, and therefore a rate controller is often used for controlling the output bitrate of the encoder.
Rate controllers may apply one of several bitrate control schemes. They may employ a constant bitrate (CBR), a maximum bitrate (MBR), or a variable bitrate (VBR). CBR means that the encoder will strive to always output the same bitrate, regardless of what happens in the captured scene. If bandwidth is limited, this may lead to low quality images when there is a motion in the scene, but high quality images when the image is static. In a surveillance or monitoring situation, this is generally not useful, as a scene with motion is normally of more interest than a static scene. With MBR, the bitrate is allowed to vary, as long as it does not exceed the bitrate limit set. The problems related to this approach are similar to the ones associated with CBR. If the MBR limit is set too low, images of a scene with motion may be of low quality. However, if the limit is set higher, in order to accommodate the motion, the output bitrate may be unnecessarily high when encoding images of a static scene. VBR may also be referred to as constant quality bitrate, meaning that the quality of the encoded images should be kept constant, but the output bitrate is allowed to vary depending on what is happening in the scene. This approach may lead to high output bitrate when there is motion in the scene. This is particularly problematic if bandwidth is limited, such as when transmitting encoded images over a mobile network. Similarly, it is problematic if storage is limited, such as when storing images on board the camera, e.g., on an SD card. High output bitrates may also be problematic in large systems of cameras if several cameras transmit images of scenes with motion simultaneously.
Another problem in digital video systems is that it is difficult to assess a need for storage capacity. If CBR is used, it is easy to estimate the needed storage capacity by simply multiplying the constant bitrate by a desired retention time. However, with MBR and VBR bitrate varies depending on what happens in the captured scene. The cost of storage is in many cases a significant part of the cost of a digital video system, and therefore system owners have a desire to keep storage capacity down. Still, this comes at a risk of losing recorded video, since the total amount of bits output over the desired retention time may be too large for the available storage capacity when there has been a lot of motion and details in the captured scene.
Hence, there is a need for an improved bitrate control method.